package com.zkingsoft.dao;

import java.util.Date;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.zkingsoft.model.Project;
import com.zkingsoft.model.WorkLog;
import com.zkingsoft.plugin.pojo.PaginationVO;
/**
 * @description 个人工作日志
 * @author 吴建
 * @email 1582406829@qq.com
 * @date 2018-07-20
 */
public interface WorkLogDao {
	/**
	 * @description 日志列表查询
	 * @author 吴建
	 * @email 1582406829@qq.com
	 * @date 2018-07-20
	 */
	List<WorkLog> selectWorkLogList(@Param("record")WorkLog workLog,@Param("pageVo")PaginationVO pageVo);
	
	List<WorkLog> selectReceiverId(@Param("senderId")long senderId);

	/**
	 * @description 查询给抄送人的ID
	 * @author 吴建
	 * @email 1582406829@qq.com
	 * @date 2018-07-20
	 */
	List<Map<String,Object>> selectUserLog(@Param("userId")String userId);

	int selectWorkLogListTotal(@Param("record")WorkLog workLog);
	
	int addOrModify(WorkLog workLog);
	
	long addWorkLog(WorkLog workLog);
	
	List<Map<String,Object>> selectSummaryGraph(@Param("projId")long projId);
	
	WorkLog selectWorkLogId(@Param("workLogId")long workLogId);
	
	List<Map<String,Object>> selectUsersId();
	
	Integer updateUserTime(@Param("userId")long userId,@Param("createTime")Date createTime);
	
	List<Project> selectProject(@Param("userId")long userId);
	
	int selectToDayWorkLog(WorkLog workLog);
	
	List<WorkLog> selectAllUserWork(@Param("record")WorkLog workLog,@Param("pageVo")PaginationVO pageVo);

	int selectAllUserWorkTotal(@Param("record")WorkLog workLog);
}
